访问电脑版页面

导航:老古开发网手机版STM32单片机开发板

STM32开发板显示界面并添加状态栏的设置方法解析

导读:
关键字:
STM32开发板,

需要完成的主要工作有:

1)划分显示位置

2)绘制状态栏背景

3)绘制电池图标:一共7种图标baTIcos[7]

4)绘制时间:只显示时和分

5)循环检测时间变化,并更改显示时间数值,同步判断电池电量,绘制相应图标

源文件:satusbar.c

#include《 includes.h 》

#include

const u8* baTIcos[7] =

{

“0:/STATUSBAR/BAT/battery0.bmp”,

“0:/STATUSBAR/BAT/battery1.bmp”,

“0:/STATUSBAR/BAT/battery2.bmp”,

“0:/STATUSBAR/BAT/battery3.bmp”,

“0:/STATUSBAR/BAT/battery4.bmp”,

“0:/STATUSBAR/BAT/battery5.bmp”,

“0:/STATUSBAR/BAT/battery6.bmp”

};

u8 bat_status = 0;

u8 tmer_min = 0;

void statusbar_fun(void)

{

//绘制状态栏

//1)绘制状态栏背景320x12 x=0,y=0,w=320,h=22

LCD_Fill(0,0,320,22,BLACK);

//2)绘制电池电量 24X14右边显示,x=320-5-24,y=2,w=24,h=14

bat_status = 6;

minibmp_decode((u8*)baTIcos[bat_status],320-5-24,4,24,14,0,0);

//3)绘制时间30x16 x=320-5-24-10-40 y=3,w=40,h=16

{

POINT_COLOR = WHITE;

tmer_min = calendar.min;

LCD_ShowChar(320-5-24-10-40+16,3,‘:’,16,1);

LCD_ShowNum(320-5-24-10-40,3,calendar.hour,2,16);

LCD_ShowNum(320-5-24-10-40+24,3,calendar.min,2,16); }

}

//由其他界面函数中的while(1)里面调用,例如主函数中

void statusbar_change(void)

{

if(tmer_min!=calendar.min)

{

tmer_min = calendar.min;

//1)绘制时间

POINT_COLOR = WHITE;

LCD_Fill(320-5-24-10-40,3,320-5-24-10,19,BLACK);

LCD_ShowChar(320-5-24-10-40+16,3,‘:’,16,1);

LCD_ShowNum(320-5-24-10-40,3,calendar.hour,2,16);

LCD_ShowNum(320-5-24-10-40+24,3,calendar.min,2,16);

//2)绘制电池电量//目前没有添加电池,只是循环改变而已,如果之后添加电池,根据获得的电池量,修改bat_status的值

if(bat_status == 0||bat_status》6)

bat_status =6;

else

bat_status--;

minibmp_decode((u8*)baTIcos[bat_status],320-5-24,4,24,14,0,0);

}

}

在头文件中添加,以便其他源文件中的函数调用

//add by joqian for statusbar

extern u8 bat_status;

extern u8 tmer_min;

extern void statusbar_change(void);

显示效果:


来源;21ic

来源:工程师周亮   作者:21ic  2019/10/24 15:38:00
栏目: [ STM32单片机开发板]

相关阅读

盘点STM32-NUCLEO开发与仿真平台

STM32F401 Nucleo开发板使用说明指南

STM32F469开发板-黑科技助推图形显示

板载高性能的STM32F446 Nucleo开发板的介绍

STM32开发板显示界面并添加状态栏的设置方法解析

意法半导体推出B-L4S5I-IOT01A STM32探索套件,简化物联网节点开发难题

e络盟为亚太区提供STM32 Nucleo全系开发板助力快速原型开发

e络盟使STM32F4 Discovery开发套件首度实现无线网络连接

意法半导体和IS2T携手打造最佳的STM32 Java开发平台

ST推出适用于STM32全系产品的经济型且易于扩展的原型开发板

意法半导体(ST)宣布STM32 F3新系列微控制器正式量产,并推出内置9轴MEMS传感器的STM32 F3开发套件